-- water reflection, based on a posting
-- on the  ArtWeaver forum by Singerxy
-- adapted by Philip Staiger
-- 
-- try these values for example:
-- ywavelength = 0.001
-- yamplitude = 10
-- rangefactor = 0.2
-- xwavelength = 2
-- xcenter = 0.1

ywavelength = 0.01
yamplitude = 50
rangefactor = 0.5
xwavelength = 10
xcenter = 0.5
y0 = height/2
x0 = width*xcenter

for y=0, y0-1 do
  for x=0, width-1 do
    tempy = y/y0
    x1 = (1-tempy) * yamplitude * math.sin(tempy * tempy * rangefactor /ywavelength)
   
    x2 = (1-tempy)*(1-tempy) * yamplitude * math.sin((x-x0) * rangefactor / xwavelength)
    h,s,l = get_hsv (x+x1+x2,y)
    l = (1+tempy)*l
    set_hsv (x,height-y,h,s,l)
  end
end          

